package com.dhecp.project.system.domain;

import com.dhecp.common.utils.RandomValueUtils;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * @description: 新邮件系统
 */
public class SysMailTableInfo implements Serializable {

	private static final long serialVersionUID = 1L;

	private String id;//唯一标识
	private Integer mailDays;//保留天数
	private Boolean mailDraft;//草稿邮件
	private String mailFile;//附件列表
	private Double mailFileSize;//附件大小
	private String mailFileContent;//附件内容（没用处）
	private String mailImportance;//重要等级
	private Integer mailImportInt;//重要等级编码[0:普通;1:急件]
	private Integer mailKind;//邮件类型编号(0:个人邮件; 2 群发邮件)
	private String mailNote;//邮件状态
	private Boolean mailRead;//阅读标志
	private Boolean mailSave;//是否保留邮件
	private String mailText;//邮件正文
	private String mailTitle;//邮件标题
	private String parentID;//父标识
	private String readListUser;//阅读人列表(群发邮件)
	@JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
	private Date readTime;//阅读时间
	private String reciveCaption;//接收人姓名
	private Boolean reciveDeleted;//删除至回收站标志
	private String reciveDepartmentCaption;//接收部门名称
	private String reciveDepartmentID;//接收部门编号
	private Boolean reciveHided;//从回收站再删除标志
	private String reciveID;//接收人
	private String reciveIDList;//接收人列表
	private String reciveKind;//邮件类型[person: 个人;org: 公司群发;dept:部门;position:岗位]
	private String reciveMainCaption;//接收人名称列表（姓名+[工号]）
	private String reciveOtherCaption;//抄收人名称列表（姓名+[工号]）
	private String reciveOtherIDList;//抄送人列表
	private String recivePositionCaption;//接收岗位名称
	private String recivePositionID;//接收岗位编号
	private String sendAction;//邮件状态(空值, 已回复, 已转发)
	private String sendCaption;//发送人姓名
	private Boolean sendDeleted;//发送人删除至回收站标志
	private String sendDepartmentCaption;//发送人部门名称
	private String sendDepartmentID;//发送人部门编号
	private Boolean sendHided;//发送人从回收站再删除标志
	private String sendID;//发送人
	private String sendPositionCaption;//发送人岗位名称
	private String sendPositionID;//发送人岗位编号
	@JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
	private Date sendTime;//发送时间
	private Integer mailICO;//存储过程（标记是否已读）
	private Integer fileICO;//存储过程（标记是否有附件）
	private Integer mailType;//存储过程（标记邮件类型reciveKind）
	private Integer mailImport;//存储过程（标记重要等级mailImportance）
	private Integer countRow;		//总记录数


	public Integer getCountRow() {
		return countRow;
	}

	public void setCountRow(Integer countRow) {
		this.countRow = countRow;
	}

	public String getId() {
		if (id == null || "".equals(id)){
			return RandomValueUtils.getGUID();
		}
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public Integer getMailDays() {
		return mailDays;
	}
	public void setMailDays(Integer mailDays) {
		this.mailDays = mailDays;
	}
	public Boolean getMailDraft() {
		return mailDraft;
	}
	public void setMailDraft(Boolean mailDraft) {
		this.mailDraft = mailDraft;
	}
	public String getMailFile() {
		return mailFile;
	}
	public void setMailFile(String mailFile) {
		this.mailFile = mailFile;
	}
	public Double getMailFileSize() {
		return mailFileSize;
	}
	public void setMailFileSize(Double mailFileSize) {
		this.mailFileSize = mailFileSize;
	}
	public String getMailFileContent() {
		return mailFileContent;
	}
	public void setMailFileContent(String mailFileContent) {
		this.mailFileContent = mailFileContent;
	}
	public String getMailImportance() {
		return mailImportance;
	}
	public void setMailImportance(String mailImportance) {
		this.mailImportance = mailImportance;
	}
	public Integer getMailImportInt() {
		return mailImportInt;
	}
	public void setMailImportInt(Integer mailImportInt) {
		this.mailImportInt = mailImportInt;
	}
	public Integer getMailKind() {
		return mailKind;
	}
	public void setMailKind(Integer mailKind) {
		this.mailKind = mailKind;
	}
	public String getMailNote() {
		return mailNote;
	}
	public void setMailNote(String mailNote) {
		this.mailNote = mailNote;
	}
	public Boolean getMailRead() {
		return mailRead;
	}
	public void setMailRead(Boolean mailRead) {
		this.mailRead = mailRead;
	}
	public Boolean getMailSave() {
		return mailSave;
	}
	public void setMailSave(Boolean mailSave) {
		this.mailSave = mailSave;
	}
	public String getMailText() {
		return mailText;
	}
	public void setMailText(String mailText) {
		this.mailText = mailText;
	}
	public String getMailTitle() {
		return mailTitle;
	}
	public void setMailTitle(String mailTitle) {
		this.mailTitle = mailTitle;
	}
	public String getParentID() {
		return parentID;
	}
	public void setParentID(String parentID) {
		this.parentID = parentID;
	}
	public String getReadListUser() {
		return readListUser;
	}
	public void setReadListUser(String readListUser) {
		this.readListUser = readListUser;
	}
	public Date getReadTime() {
		return readTime;
	}
	public void setReadTime(Date readTime) {
		this.readTime = readTime;
	}
	public String getReciveCaption() {
		return reciveCaption;
	}
	public void setReciveCaption(String reciveCaption) {
		this.reciveCaption = reciveCaption;
	}
	public Boolean getReciveDeleted() {
		return reciveDeleted;
	}
	public void setReciveDeleted(Boolean reciveDeleted) {
		this.reciveDeleted = reciveDeleted;
	}
	public String getReciveDepartmentCaption() {
		return reciveDepartmentCaption;
	}
	public void setReciveDepartmentCaption(String reciveDepartmentCaption) {
		this.reciveDepartmentCaption = reciveDepartmentCaption;
	}
	public String getReciveDepartmentID() {
		return reciveDepartmentID;
	}
	public void setReciveDepartmentID(String reciveDepartmentID) {
		this.reciveDepartmentID = reciveDepartmentID;
	}
	public Boolean getReciveHided() {
		return reciveHided;
	}
	public void setReciveHided(Boolean reciveHided) {
		this.reciveHided = reciveHided;
	}
	public String getReciveID() {
		return reciveID;
	}
	public void setReciveID(String reciveID) {
		this.reciveID = reciveID;
	}
	public String getReciveIDList() {
		return reciveIDList;
	}
	public void setReciveIDList(String reciveIDList) {
		this.reciveIDList = reciveIDList;
	}
	public String getReciveKind() {
		return reciveKind;
	}
	public void setReciveKind(String reciveKind) {
		this.reciveKind = reciveKind;
	}
	public String getReciveMainCaption() {
		return reciveMainCaption;
	}
	public void setReciveMainCaption(String reciveMainCaption) {
		this.reciveMainCaption = reciveMainCaption;
	}
	public String getReciveOtherCaption() {
		return reciveOtherCaption;
	}
	public void setReciveOtherCaption(String reciveOtherCaption) {
		this.reciveOtherCaption = reciveOtherCaption;
	}
	public String getReciveOtherIDList() {
		return reciveOtherIDList;
	}
	public void setReciveOtherIDList(String reciveOtherIDList) {
		this.reciveOtherIDList = reciveOtherIDList;
	}
	public String getRecivePositionCaption() {
		return recivePositionCaption;
	}
	public void setRecivePositionCaption(String recivePositionCaption) {
		this.recivePositionCaption = recivePositionCaption;
	}
	public String getRecivePositionID() {
		return recivePositionID;
	}
	public void setRecivePositionID(String recivePositionID) {
		this.recivePositionID = recivePositionID;
	}
	public String getSendAction() {
		return sendAction;
	}
	public void setSendAction(String sendAction) {
		this.sendAction = sendAction;
	}
	public String getSendCaption() {
		return sendCaption;
	}
	public void setSendCaption(String sendCaption) {
		this.sendCaption = sendCaption;
	}
	public Boolean getSendDeleted() {
		return sendDeleted;
	}
	public void setSendDeleted(Boolean sendDeleted) {
		this.sendDeleted = sendDeleted;
	}
	public String getSendDepartmentCaption() {
		return sendDepartmentCaption;
	}
	public void setSendDepartmentCaption(String sendDepartmentCaption) {
		this.sendDepartmentCaption = sendDepartmentCaption;
	}
	public String getSendDepartmentID() {
		return sendDepartmentID;
	}
	public void setSendDepartmentID(String sendDepartmentID) {
		this.sendDepartmentID = sendDepartmentID;
	}
	public Boolean getSendHided() {
		return sendHided;
	}
	public void setSendHided(Boolean sendHided) {
		this.sendHided = sendHided;
	}
	public String getSendID() {
		return sendID;
	}
	public void setSendID(String sendID) {
		this.sendID = sendID;
	}
	public String getSendPositionCaption() {
		return sendPositionCaption;
	}
	public void setSendPositionCaption(String sendPositionCaption) {
		this.sendPositionCaption = sendPositionCaption;
	}
	public String getSendPositionID() {
		return sendPositionID;
	}
	public void setSendPositionID(String sendPositionID) {
		this.sendPositionID = sendPositionID;
	}
	public Date getSendTime() {
		return sendTime;
	}
	public void setSendTime(Date sendTime) {
		this.sendTime = sendTime;
	}
	public Integer getMailICO() {
		return mailICO;
	}
	public void setMailICO(Integer mailICO) {
		this.mailICO = mailICO;
	}
	public Integer getFileICO() {
		return fileICO;
	}
	public void setFileICO(Integer fileICO) {
		this.fileICO = fileICO;
	}
	public Integer getMailType() {
		return mailType;
	}
	public void setMailType(Integer mailType) {
		this.mailType = mailType;
	}
	public Integer getMailImport() {
		return mailImport;
	}
	public void setMailImport(Integer mailImport) {
		this.mailImport = mailImport;
	}
	
}